/**
 * 
 */
package iut2.sponsor.client;

import java.util.ArrayList;


/**
 * Classe gerant la liste des sponsors enregistres
 */
public class Sponsors extends ArrayList<Sponsor>{

	/**
	 * Auto generated ID
	 */
	private static final long serialVersionUID = 9084379013498979059L;

	/**
	 * Constructeur par defaut pour la serialization
	 */
	public Sponsors() {
	}
	
	/**
	 * @return le total des montants offerts par les sponsors
	 */
	public int getMontant() {
		int tot = 0;
		
		for (Sponsor sp: this) {
			tot += sp.getMontant();
		}
		return tot;
	}
	
	/**
	 * @return la liste des lots offerts par les sponsors
	 */
	public ArrayList<String> getLots() {
		ArrayList<String> tot = new ArrayList<String>();
		
		for (Sponsor sp: this) {
			tot.addAll(sp.getLots());
		}
		return tot;
	}
	
	/**
	 * @return le nombre de lots offerts par les sponsors
	 */
	public int getNbLots()
	{
		int nb = 0;
		
		for (Sponsor sp: this) {
			nb += sp.getLots().size();
		}
		
		return nb;
	}
	
	/**
	 * Verifie l'existence d'un sponsor dans la liste
	 * @param nom nom du sponsor a verifier
	 * @return vrai si le sponsor existe et faux sinon
	 */
	public boolean existe(String nom) {
		boolean retour = false;
		for (Sponsor sp: this) { if (sp.getName().equals(nom)) { retour = true; } }
		return retour;
	}
	
	/**
	 * @return la liste des sponsors ayant donne de l'argent
	 */
	public ArrayList<SponsorArgent> getSponsorsArgent() {
		ArrayList<SponsorArgent> list = new ArrayList<SponsorArgent>();
		for (Sponsor sp: this) {
			if (sp.getMontant()>0) { list.add((SponsorArgent)sp); }
		}
		return list;
	}
}
